import ActionTypes from "@/const/action";

// /**@desc 展会管理 */
// EXHIBITION_MANAGE: 'EXHIBITION_MANAGE',
// /**@desc 轮播图管理 */
// PICTURE_MANAGE: 'PICTURE_MANAGE',
// /**@desc 分类栏 */
// CATEGORY_ICON: 'CATEGORY_ICON',
// /**@desc 首页弹窗 */
// HOMEPAGE_POPUP: 'HOMEPAGE_POPUP',
// /**@desc 商品一级分类 */
// GOODS_CATEGORY_FIRST: 'GOODS_CATEGORY_FIRST',
// /**@desc 商品二级分类 */
// GOODS_CATEGORY_SECOND: 'GOODS_CATEGORY_SECOND',
// /**@desc 商品管理 */
// GOODS_MANAGE: 'GOODS_MANAGE',
// /**@desc 商户列表 */
// MERCHANT_LIST: 'MERCHANT_LIST',
// /**@desc 维修问题列表 */
// REPAIR_QUESTION: 'REPAIR_QUESTION',
// /**@desc 员工列表 */
// PERSONNEL_MANAGE: 'PERSONNEL_MANAGE',
// /**@desc 用户角色管理 */
// ROLE_MANAGE: 'ROLE_MANAGE',
// /**@desc 账户管理列表 */
// ACCOUNT_AUTH: 'ACCOUNT_AUTH',
// /**@desc 佣金管理列表 */
// COMMISSION_MANAGE: 'COMMISSION_MANAGE',
// /**@desc 用户数据统计 */
// STATISTICS_USER: 'STATISTICS_USER',
// /**@desc 商家数据统计 */
// STATISTICS_MERCHANT: 'STATISTICS_MERCHANT',
// /**@desc 维修统计 */
// STATISTICS_SERVICE: 'STATISTICS_SERVICE',
// /**@desc 维修类型统计 */
// STATISTICS_TYPE: 'STATISTICS_TYPE',
// /**@desc 展会統計 */
// STATISTICS_EXHIBITION: 'STATISTICS_EXHIBITION',
// /**@desc 地域统计 */
// STATISTICS_RANGE: 'STATISTICS_RANGE',
// /**@desc 商品统计 */
// STATISTICS_GOODS: 'STATISTICS_GOODS',
// /**@desc 维修订单 */
// MAINTAIN_ORDER: 'MAINTAIN_ORDER',
// /**@desc 订单列表 */
// ORDER_MANAGE: 'ORDER_MANAGE',
// /**@desc 优惠券管理 */
// COUPON_MANAGE: 'COUPON_MANAGE',
// /**@desc 用户管理列表 */
// USER_CORE_MANAGE: 'USER_CORE_MANAGE',
// /**@desc 用户购买历史 */
// USER_CORE_HISTORY: 'USER_CORE_HISTORY',
// /**@desc 数据统计 */
// STATISTICS_DATE: 'STATISTICS_DATE',
// /**@desc 商户审核列表 */
// MERCHANT_AUDIT_LIST: 'MERCHANT_AUDIT_LIST'

const DATA_KEYS_FILTER = {
  [ActionTypes.EXHIBITION_MANAGE]: [
    "cityCode",
    "endTime",
    "exhibitionName",
    "id",
    "isPutAway",
    "provinceCode",
    "startTime",
  ],
  [ActionTypes.PICTURE_MANAGE]: [
    "body", // 描述
    "id",
    "isPutAway", // 是否上架 ,
    "pictureFileKey", // 图片fileKey ,
    "productId", // 跳转商品id
  ],
  [ActionTypes.MERCHANT_LIST]: [
    "address", // 地址
    "businessLicenseFileKey", // 营业执照fileKey
    "cityCode", // 市编码 ,
    "districtCode", // 区编码
    "id",
    "idCode", //身份证 ,
    "idContraryFileKey", // 身份证反面fileKey ,
    "idFrontFileKey", // 身份证正面fileKey ,
    "latitude", //  纬度 ,
    "list", // 商户勾选分类参数 ,
    "longitude", // 经度 ,
    "merchantName", // 商户名 ,
    "mobile", // 手机号 ,
    "password", // 密码 ,
    "provinceCode", // 省编码 ,
    "visualizeFileKey", // 个人形象fileKey
  ],
  [ActionTypes.GOODS_MANAGE]: [
    "cashPledge", // 押金
    "categorySonId", // 二级分类id
    "firstCategoryId", // 一级分类id
    "id", // id
    "introduce", // 商品介绍
    "isHot", // 是否热门
    "isPutAway", // 是否上架
    "isRecommend", // 是否推荐
    "list", // 关联的城市和展会
    "pictureFileKey", // 图片fileKey
    "price", // 售价
    "productCode", // 商品编码
    "productName", // 商品名
    "productType", // 商品类型
    "salesQuantity", // 销售数量
    "specification", // 规格
  ],
  [ActionTypes.HOMEPAGE_POPUP]: [
    "body", // 内容描述
    "discounts", // 优惠金额
    "endTime", // 结束时间
    "fullMoney", // 门槛金额
    "id", // id
    "popupType", // 弹窗类型
    "startTime", // 开始时间
  ],
  [ActionTypes.REPAIR_QUESTION]: [
    "description", // 描述
    "id", // id
    "isPutAway", // 是否上架
    "pictureFileKey", // 图片fileKey
    "questionType", // 问题类型
  ],
  [ActionTypes.GOODS_CATEGORY_FIRST]: [
    "body", // 描述
    "categoryName", // 分类名
    "id", // id
    "indexSort", // 首页排序
    "isIndexShow", // 是否首页显示
    "isShow", // 是否显示二级分类
    "pictureFileKey", // 图片fileKey
    "sort", // 排序
  ],
  [ActionTypes.COMMISSION_MANAGE]: [
    "cityCode", // 市编码
    "id", // id
    "percentage", // 佣金比例
    "provinceCode", // 省编码
  ],
  [ActionTypes.PERSONNEL_MANAGE]: [
    "avatarFileKey", // 员工头像
    "affirmPassword", // 确认密码
    "cityCode", // 市编码
    "id", // id
    "idContraryFileKey", // 身份证反面fileKey
    "idFrontFileKey", // 身份证正面fileKey
    "mobile", // 电话
    "password", // 密码
    "provinceCode", // 省编码
    "staffName", // 员工名
  ],
  [ActionTypes.GOODS_CATEGORY_SECOND]: [
    "categoryName", // 分类名
    "id", // id
    "parentId", // 一级分类id
    "pictureFileKey", // 图片fileKey
  ],
  [ActionTypes.ROLE_MANAGE]: [
    "id",
    "roleName", // 角色名称
    "roleDescribe", // 角色描述
    "permissionIds[]", // 权限id数组
  ],
  [ActionTypes.ACCOUNT_AUTH]: [
    "userId", // 用户id
    "userName", // 用户名
    "trueName", //真实姓名
    "mobile", // 手机号
    "password", // 初始密码
    "confirmPassword", // 重复初始密码
    "body", // 描述
    "roleId", // 角色id
    "provinceCode",
    "cityCode",
  ],
};

function filterData(data, action) {
  const filters = DATA_KEYS_FILTER[action];
  const resultData = {};

  if (!filters) {
    return data;
  }

  Object.keys(data).forEach((key) => {
    if (filters.includes(key) && data[key] !== "") {
      resultData[key] = data[key];
    }
  });
  return resultData;
}

export default filterData;
